home *** CD-ROM | disk | FTP | other *** search
/ The Soundblaster Multimedia Experience 3 / The Soundblaster Multimedia Experience Vol 3.iso / tools / smix12 / mix.doc < prev    next >
Text File  |  1994-03-13  |  31KB  |  729 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.                        Superiority MIX Audio Player v1.2
  30.  
  31.                       Copyright (C) 1994 by Avery Pennarun
  32.  
  33.                             For Superiority Complex
  34.  
  35.  
  36.  
  37.  
  38.                                  What's a MIX?
  39.                                  -------------
  40.  
  41.   I'd like to tell you that Superiority MIX is an entirely new concept,  but,
  42.   well, it's not.  MIX is a program designed to play Amiga-format .MOD  music
  43.   files on a PC.  Of course, this has been done a million (or at least  five)
  44.   times before... but you have to start somewhere.
  45.  
  46.   USELESS TRIVIA:  Superiority MIX is actually the name of the  audio-playing
  47.        library I'm working on. This program is actually just a "wide beta" of
  48.        the MIXLIB which we (Superiority Complex) will be and have been using in
  49.        our productions.
  50.  
  51.   Even though I branded  MIX a "test"  right from the start,  I sort of  lost
  52.   control halfway through and added a user interface, including: 
  53.      - "Realistic" (not "real" - actually, quite fake!) volume bars;
  54.      - Sample-tracker that displays all sample names, which voices are playing
  55.        which samples, which samples actually CAN be played, and which samples
  56.        HAVE been played;
  57.      - Time, memory usage, note-tracker, speed... and other displays
  58.      - Advanced shell-to-DOS that  works with  "most" programs  (all that  we
  59.        tested, in fact, although we didn't try very hard to find a "bad" one);
  60.      - Control over MOD playing, including speed, volume, note-position... and
  61.        other controls.
  62.  
  63.   USELESS TRIVIA: I wrote the original user interface all in one day. It then
  64.        took me about a week to make it work RIGHT.
  65.  
  66.   MIX supports a number of sound cards.  Unlike many MOD players, I didn't go
  67.   crazy and support every sound card I could find. (that comes later!) Instead,
  68.   I supported Sound Blaster, which most  are compatible with, and then  added
  69.   GRAVIS ULTRASOUND, COVOX SOUND MASTER II, and HOMEMADE DAC support.   Other
  70.   cards that are Sound  Blaster compatible can just  use the "Sound  Blaster"
  71.   setting.  I left  out other cards,  like Sound Blaster  Pro because I  just
  72.   couldn't find any information  on programming them  (still looking -  hint,
  73.   hint) and it would be incredibly hard to test since I don't have one.
  74.  
  75.   USELESS TRIVIA:  All  the supported cards are  currently operated in  their
  76.        respective NON-DMA modes.  (Why?   Because I couldn't find  sufficient
  77.        information, of course - hint, hint) However, in the case of the GRAVIS
  78.        ULTRASOUND, it takes virtually no  processor time to handle the  audio
  79.        anyway.  Summary: make my job easier!  GET A GUS!
  80.  
  81.   MIX does NOT support the internal speaker (I have an idea that could  allow
  82.   this in the future) or  the Ad Lib card.   Neither of these support  "easy"
  83.   digital audio, so I didn't bother with them in this version.
  84.  
  85.   WARNING:  If your GRAVIS ULTRASOUND has not been upgraded to 1 meg, very long
  86.             MODs will not play correctly.
  87.  
  88.   Well, on with the story.
  89.  
  90.  
  91.                                      Page 2
  92.  
  93.  
  94.  
  95.  
  96.                    Licence Agreement and Unlimited Warrantee
  97.                    -----------------------------------------
  98.   Boring Version
  99.   --------------
  100.  
  101.   NOTE: This  licence,  dated March  1994,  supersedes all  previous  licence
  102.        agreements applying to this software.  It applies ONLY to this version
  103.        1.2 of Superiority MIX.
  104.  
  105.   This software is provided on an  as-is basis.  The author, Avery  Pennarun,
  106.   will not be responsible  for any damages  that may result  from the use  or
  107.   inability to  use this  software.   The author  specifically disclaims  all
  108.   warranties, expressed or implied, regarding this software.
  109.  
  110.   While we encourage free distribution, you are not permitted to redistribute
  111.   all or any part of this software in a modified or incomplete form. If at all
  112.   possible, MIX should be distributed in its original compressed archive.  If
  113.   a new archive or distribution disk must be created, it should have the same
  114.   name as the original and MUST CONTAIN all files listed under the section of
  115.   this document entitled "File List."
  116.  
  117.   This version of MIX is FREEWARE.  This means that it is free. You may  use,
  118.   distribute, copy, archive, and enjoy this program as long as you like, and we
  119.   encourage you to do so.  However, YOU MAY NOT SELL THIS SOFTWARE!  The only
  120.   charge  that   may  be   applied  to   the  distribution   of  MIX   is   a
  121.   distribution/copying charge of less than five Canadian dollars.  It must be
  122.   made clear that this is a payment to the distributor, NOT a registration with
  123.   the author.
  124.  
  125.   FREEWARE is not the same as Public Domain software. The author reserves his
  126.   copyright to MIX. Modifying, reverse engineering, or decompiling MIX or any
  127.   of its included files is expressly prohibited.
  128.  
  129.   This agreement shall  be governed  in accordance  to the  laws of  Ontario,
  130.   Canada.
  131.  
  132.  
  133.   Not-So-Boring Version
  134.   ---------------------
  135.  
  136.   Do what you want with this software (within reasonable and legal range - such
  137.   acts as manslaughter are often considered felonies, and can lead to a not-so-
  138.   happy situation) but don't sue me for it.
  139.  
  140.   No limitations are  made regarding  the warrantee  of this  product.   Why?
  141.   Because THERE IS NO WARRANTEE.  Superiority MIX, at least this version,  is
  142.   FREE SOFTWARE, and we  take no responsibility for  it or anything that  may
  143.   happen because of it.  Not that anything SHOULD happen, but heck...
  144.  
  145.  
  146.  
  147.  
  148.  
  149.                                      Page 3
  150.  
  151.  
  152.  
  153.  
  154.                                    File List
  155.                                    ---------
  156.  
  157.   The following files  were originally included  in the distribution  archive
  158.   and/or on the distribution disk.   A legal copy  of MIX MUST include  these
  159.   files:
  160.  
  161.   MIX.EXE        -    The main program
  162.   MIX.DOC        -    That's this.  This is that.  And that's that.
  163.   REVHIST.DOC    -    MIX revision history since v1.0. (list of changes)
  164.   MOD_INFO.TXT   -    Handy-dandy programmers' info for MODs.
  165.   SCS.NFO        -    Information about Superiority Complex.  Read this!
  166.   FILE_ID.DIZ    -    10-line description for BBS's
  167.   DESC.SDI       -    1-line description
  168.  
  169.  
  170.                                 Getting Started
  171.                                 ---------------
  172.  
  173.   This tutorial will get you started playing MOD files with Superiority  MIX.
  174.   Most people can figure  it out anyway, but  PLEASE read this for  important
  175.   information regarding MIX.
  176.  
  177.   WARNING:  If you have EMM386, QEMM, 386MAX, or another memory manager  (NOT
  178.             including HIMEM), you should disable it  when you use MIX.   They
  179.             slow down the program because they use your processor's protected
  180.             mode, resulting in reduced sound quality. If you have DOS 6, just
  181.             use the multi-boot configuration to remove your memory manager when
  182.             you need to.  (See your DOS manual)  If you have a fast  computer
  183.             you might experiment with leaving your memory manager alone.
  184.  
  185.   Users of the 8086 and 8088 processors:  I have good news and bad news.  The
  186.   good news is that your processor doesn't even SUPPORT protected mode, so you
  187.   don't have to worry about memory managers.  The bad news is that they don't
  188.   support MIX, either.  It's time  to either upgrade your computer or  delete
  189.   MIX.
  190.  
  191.   USELESS TRIVIA:  The GRAVIS ULTRASOUND play mode doesn't particularly  care
  192.        whether you  have a  memory manager  loaded because  it does  all  the
  193.        processing internally anyway.  Also, once I figure out DMA, the  Sound
  194.        Blaster and Sound Master II sound cards will work the same way. DigiLen
  195.        100 doesn't support DMA.
  196.  
  197.   STEP 1:   Pick a  MOD.   Previous  versions of  MIX were  distributed  with
  198.             VOCIF.MOD, but this version no longer is (we thought you might be
  199.             tired of it by now).  Pretend you're using XMASSONG.MOD for  this
  200.             tutorial. (Why?  Because it's one of the soundtrack MODs from our
  201.             Christmas '93 demo, and we released it at the same time as MIX 1.2!
  202.             You DID download XMASMODS.ZIP, right?  So what if it's March!)
  203.  
  204.  
  205.  
  206.  
  207.                                      Page 4
  208.  
  209.  
  210.  
  211.  
  212.   STEP 2:   Run MIX.  Another easy one.  MIX v1.2 currently supports only two
  213.             command-line options (and you don't  NEED to use them). It  works
  214.             like this:
  215.                  MIX xmassong.mod
  216.  
  217.             USELESS TRIVIA:  Advanced users can use wildcards or multiple MOD
  218.                  names on the same line. Separate multiple names with spaces.
  219.  
  220.             MIX sports two command line options:
  221.                  /D - Disable detect.  MIX will ask for your sound card  type
  222.                       and address instead  of trying  to detect it.   STEP  3
  223.                       demonstrates a use for this.
  224.                  /S - Select sample rate.  The  REALLY lazy people who  don't
  225.                       want to select a sampling rate every time they start, can
  226.                       use this option on the command line, ie: /S15000 for  a
  227.                       15KHz sampling rate.
  228.  
  229.                       USELESS TRIVIA:  You can select ANY sampling rate  with
  230.                            this switch,  including ones  that aren't  in  the
  231.                            menu.  For example,  if 15000 Hz  is too fast  for
  232.                            your computer, but 14999 Hz works, you can use this
  233.                            switch.  Unfortunately, this will never happen.
  234.  
  235.   STEP 3:   Watch as MIX detects your sound card. The first time in MIX, watch
  236.             the message to make  sure that the correct  card and address  are
  237.             detected (although you'll notice soon enough if they aren't, since
  238.             sound won't play).  Detection should  take no more than a  couple
  239.             seconds, and it has never taken that long.  If you have a DigiLen
  240.             100 or a DAC on LPTx, MIX  will not be able to detect your  card.
  241.             Select DAC on LPTx from the  resulting window.  If it hangs  your
  242.             computer or detects the wrong card... there ARE a few ways around
  243.             it:
  244.                - Leave caution  to the  wind, reboot,  and try  again.   This
  245.                  usually doesn't work, but it actually does sometimes.
  246.                - GUS or Sound Blaster users: set the appropriate  environment
  247.                  variable.  (ULTRASND or BLASTER)  Your manual should explain
  248.                  how to  do this.   In  fact, the  install program  for  your
  249.                  hardware should have created these in the first place.
  250.                - Try running MIX with the /D (disable detect) parameter. This
  251.                  will force  MIX to  ask you  for your  sound card  type  and
  252.                  address.  Example:
  253.                       MIX xmassong /d
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.                                      Page 5
  266.  
  267.  
  268.  
  269.  
  270.   STEP 4:   Choose a sampling rate.  It's  a long list, but I've  recommended
  271.             certain sampling rates for certain processors.  Try starting with
  272.             that, and then  increasing the sampling  rate within the  program
  273.             (using the [R] key) until the display starts to slow down.
  274.  
  275.             USELESS TRIVIA: The sound has pretty much reached maximum quality
  276.                  at about 25 KHz. (DNA made me add in the others because he has
  277.                  a big hyperactive 486 - he can't tell the difference  either
  278.                  but is sure there must be one) Because the GRAVIS ULTRASOUND
  279.                  mixes sound internally, MIX bypasses this step.
  280.  
  281.   STEP 5:   Look, listen, learn.  If  you're hearing beautiful music  through
  282.             your sound card, you've succeeded and can skip to step 6.  If the
  283.             sound or display is too slow, choose a lower sampling rate with the
  284.             [R] key. (you may need to reboot if the sampling rate is WAY  too
  285.             high and your  display is frozen)   GUS users:  ignore all  notes
  286.             regarding sampling rate.
  287.  
  288.   STEP 6:   Try a higher sampling rate and return to step 5.  Sampling  rates
  289.             are a give and take system; you can use the very low 5 KHz on any
  290.             computer, and the sound will be correct. However, it will also be
  291.             very low-quality.  As you  increase the sampling rate, the  sound
  292.             quality improves, but the display begins to slow down. The higher
  293.             the sampling rate,  the more  processor time that  is devoted  to
  294.             music.
  295.  
  296.             USELESS TRIVIA: Unlike many other MOD players, MIX doesn't totally
  297.                  screw up your system clock  while playing a song.   However,
  298.                  there's a very good chance that it won't run at EXACTLY  the
  299.                  same speed as normal, since  MIX has to increase your  clock
  300.                  speed "invisibly" and then compensate. Don't worry, losing a
  301.                  few seconds here and there  is a lot better than  completely
  302.                  stopping time.
  303.  
  304.   STEP 7:   Experiment with MIX's controls and make the song sound nothing like
  305.             it really should. The controls are listed later in this DOC and a
  306.             quick-list of them is available if you press F1 from within MIX.
  307.  
  308.   STEP 8:   Enjoy this incredible experience and have a NICE day.
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.                                      Page 6
  324.  
  325.  
  326.  
  327.  
  328.  
  329.                             Using the User Interface
  330.                             ------------------------
  331.  
  332.      +------------------------- (1) SongTitle ----------------------------+
  333.      |                                               |                    |
  334.      |               (2) VoiceTracker                |  (3) SongTracker   |
  335.      |                                               |                    |
  336.      |-----------------------------------------------+--------------------|
  337.      |                                               |                    |
  338.      |                                               |  (4) MemTracker    |
  339.      |                                               |                    |
  340.      |               (6) SampleTracker               |--------------------|
  341.      |                                               |                    |
  342.      |                                               |  (5) TimeTracker   |
  343.      |                                               |                    |
  344.      +------------------------Superiority MIX v1.2------------------------+
  345.  
  346.   The above diagram is a (rather cheap) rendition of what an actual MOD playing
  347.   screen looks like.  Each area works as follows:
  348.  
  349.   (1) SongTitle       Displays the filename and title of the song.
  350.  
  351.   (2) VoiceTracker    Displays the sample (instrument)  being played and  the
  352.                       volume level for each of the four voices.
  353.  
  354.                       USELESS TRIVIA: No,  we can't read  the numbers in  the
  355.                            volume display either, but they look pretty.   The
  356.                            volume bars (next to the  numbers) are a bit  more
  357.                            informative.
  358.  
  359.   (3) SongTracker     Displays information about the player:
  360.  
  361.        POSITION  The current and maximum pattern-positions in the song. A MOD
  362.                  consists of up to 128 positions that play in numerical order.
  363.                  When you get to the last position, most MODs will end.  Some
  364.                  will loop back to a previous position and play forever unless
  365.                  you use the [L]oopmode command.
  366.  
  367.        PATTERN   The current/maximum pattern in the song. A MOD can contain up
  368.                  to 64 unique patterns. Each pattern-position (above) selects
  369.                  one pattern to  play.  Particularly  repetitive songs  (like
  370.                  VOCIF) will use the same  pattern in more than one  pattern-
  371.                  position to save space.
  372.  
  373.        NOTE      The current/maximum note number in the current pattern. There
  374.                  are always 64 notes in a pattern, but certain MOD commands can
  375.                  end a pattern prematurely.
  376.  
  377.  
  378.  
  379.  
  380.  
  381.                                      Page 7
  382.  
  383.  
  384.  
  385.  
  386.  
  387.        SPEED     The speed at which a song plays. (tempo)
  388.  
  389.                  USELESS TRIVIA: The songspeed is actually expressed in ticks
  390.                       per note.  One tick is 1/50th of a second.  So, a  song
  391.                       playing at speed 3 would take 3/50ths or 0.06 seconds per
  392.                       note.
  393.  
  394.        VOLUME    Hint:  It changes when you use the set volume keys (+,-).
  395.  
  396.                  USELESS TRIVIA: The volume level, while displayed in percent,
  397.                       is really  a number  from 0-64.   When  you adjust  the
  398.                       volume, you are adding  or subtracting 1/64th, not  1%.
  399.                       This is why  the volume control  sometimes adjusts  the
  400.                       display by 2% and sometimes by 1%.
  401.  
  402.        SAMPRATE  The current song sampling rate.  See "Getting Started" above
  403.                  for more information on  choosing a sampling  rate.  In  GUS
  404.                  mode, the sampling rate shows "UltraHi" because of the card's
  405.                  hardware mixer that seems to have indefinite quality.
  406.  
  407.                  USELESS TRIVIA: The GRAVIS ULTRASOUND's internal sound mixer
  408.                       theoretically can increase the quality of the sample so
  409.                       that is sounds better than playing one sample at a time
  410.                       on Sound Blaster-like systems.  GET A GUS!
  411.  
  412.        LOOPMODE  Controls how long a song will play. There are three different
  413.                  loopmodes, selected with the [L]oopmode command:
  414.                       NORMAL    Plays a MOD like it was originally  designed.
  415.                                 If it wants  to loop  itself permanently,  it
  416.                                 can.  Otherwise, it will end.
  417.                       ALWAYS    Replay a MOD from the beginning if it ends.
  418.                       FADE      Fade out and terminate MODs that try to  loop
  419.                                 themselves.
  420.  
  421.   (4) MemTracker
  422.        Displays information about system memory:
  423.  
  424.        TOTAL     The amount of memory available after MIX loaded but before the
  425.                  MOD was loaded.  This shows you how much memory is available
  426.                  for playing MODs.
  427.  
  428.        USED      The amount of memory  being used by the  current MOD.   This
  429.                  includes buffers needed for mixing voices on non-GUS cards.
  430.                  USELESS TRIVIA: The Gravis Ultrasound takes a WHOLE LOT less
  431.                       memory when playing  MODs since it  requires no  mixing
  432.                       buffers and  all samples  are  loaded into  the  card's
  433.                       memory.  GET A GUS!
  434.  
  435.  
  436.  
  437.  
  438.  
  439.                                      Page 8
  440.  
  441.  
  442.  
  443.  
  444.        FREE      The amount of memory left at the moment.  This is useful for
  445.                  determining the kind of performance you'll get if you shell to
  446.                  DOS, or how close you are to running out. (i.e. if you  only
  447.                  have 50k free, don't try to play a MOD 200k longer than this
  448.                  one or MIX will give you an error)
  449.  
  450.   (5) TimeTracker
  451.        Displays information about the play-time of the song:
  452.  
  453.        NOW       The length of time (in minutes:seconds) that the current song
  454.                  has been playing.
  455.  
  456.        ESTIMATE  The length of time that MIX expects a song to play. Note that
  457.                  looping songs will play  forever:  in this  case,  MIX  will
  458.                  display "No End." ESTIMATE is simply for your information, and
  459.                  is an  "educated guess"  - it's  seldom exactly  right,  but
  460.                  usually close.
  461.  
  462.   (6) SampleTracker
  463.        Displays information about the different samples in a song.  A MOD can
  464.        contain up to 31 different samples, each up to 128k long.
  465.  
  466.        USELESS TRIVIA:  MIX  will only load  up to 64k of  any sample.   This
  467.             screws up the playing of U4IA.MOD, and a couple of other songs. We
  468.             will fix this in the future...
  469.  
  470.        The entry for each sample is as follows:
  471.             1 o SampleName
  472.  
  473.        The "1" is actually a: blank,  "1," "2," "3," or "4," depending  which
  474.        voice is playing that sample.   If more than  one voice is using  that
  475.        sample, an "M" is shown.
  476.  
  477.        The "o" is either a blank, a dot, or a block.  A blank indicates  that
  478.        there is no sample in that position (a sample may be loaded and have a
  479.        name, etc, but it has no corresponding sound effect in the MOD). I dot
  480.        indicates that this sample is playable (contains a sound effect), and a
  481.        block indicates that this sample has already been played in the song.
  482.  
  483.        The samplename can be up to 22 characters long and generally gives the
  484.        name of the sample.
  485.  
  486.        USELESS TRIVIA:  Many MODs  use the  samplename for  another  purpose:
  487.             greetings.  The author renames all or some of the samples to form
  488.             a few  sentences.   XMASSONG.MOD  contains  an example  of  this,
  489.             although DNA left the actual  samples alone and changed only  the
  490.             unused slots.
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.                                      Page 9
  498.  
  499.  
  500.  
  501.  
  502.  
  503.                              Controlling The Player
  504.                              ----------------------
  505.  
  506.   As I mentioned above, MIX gives the user a lot of control over its play. The
  507.   following keys affect MIX's operation:
  508.  
  509.   F1        Brings up a help window with an abbreviated version of this list.
  510.  
  511.   P         Pauses the song.  Press a key to resume playing.
  512.  
  513.   1,2,3,4   Toggles the corresponding voice on or off. When a particular voice
  514.             is off, it will show "MUTE" in the voicetracker window.
  515.  
  516.   R         Change current sampling rate.  See "Getting Started."
  517.  
  518.   D         Shell to DOS.  There are a number of things you should know:
  519.                - When shelled to DOS, you can expect MIX to retain from 100k of
  520.                  memory to a lot  more depending which  MOD you are  playing.
  521.                  Check the "memory free" meter if you don't know how much  is
  522.                  left. You need about 100k minimum if you want to shell to DOS
  523.                  at all, and more if you want to do anything useful.
  524.                - Don't run any programs that use sound while in the shell.
  525.                - Other programs will slow down while playing a MOD because of
  526.                  the time required to mix voices.
  527.                - If a song ends while you are shelled, it will be played again.
  528.                  (and again and again...)
  529.                - Type EXIT at the command prompt to return to MIX.
  530.  
  531.   ],[       Adjust speed. ] will turn up the speed value, thereby slowing down
  532.             the song. [ will lower the speed value and speed up the song.  If
  533.             the song adjusts its  speed after you've set  it, the speed  will
  534.             become normal again unless you change it.  Generally it's not too
  535.             useful to play with the song speed, but it can be fun.
  536.  
  537.   <-,->     Position Jump. Use the right and left arrow keys as "fast forward"
  538.             and "rewind" respectively.
  539.  
  540.   +,-       Turn the master volume up or down respectively. You don't have to
  541.             use the SHIFT key to press +, although you can if you want.
  542.  
  543.   N         Next song.  (also ENTER and SPACE)  If you gave wildcards or more
  544.             than one name on the command line, this will end the current song
  545.             and start the next one. See "Getting Started" for more information
  546.             about using the command line. If you only gave one name or this is
  547.             the last song, MIX will terminate as if you had pressed ESC.
  548.  
  549.   ESC       Exit MIX. This will end the current song and immediately dump you
  550.             to DOS. It differs from [N]ext in that ESC will ignore all pending
  551.             songs.
  552.  
  553.  
  554.  
  555.                                     Page 10
  556.  
  557.  
  558.  
  559.  
  560.                             MOD File Implementation
  561.                             -----------------------
  562.  
  563.   This section is mostly for the techies out there. If you don't particularly
  564.   care how MIX implements MODs, you can safely skip this section.
  565.  
  566.  
  567.   Voice Mixer
  568.   -----------
  569.  
  570.   The mixer routines are entirely Object-Oriented and written using Borland C++
  571.   3.1 w/ Application Frameworks. I didn't use the Application Frameworks, for
  572.   those who don't find that obvious.  The processor-intensive code is written
  573.   using inline assembly and/or TASM 3.1, which came with BC++.
  574.  
  575.   The mixer can theoretically handle any  number of voices at once,  although
  576.   MODs are limited to four.
  577.  
  578.   In non-GUS mode, I  mix the voices into  one of two variable-sized  buffers
  579.   which are then played by my timer-oriented digital player routines. When one
  580.   buffer is entirely played, the digiplayer begins playing the other buffer in
  581.   the background and tells the mixer to begin filling the first buffer, and so
  582.   it goes, back and forth.
  583.  
  584.   In GUS mode, the operation is similar  except there are no buffers at  all.
  585.   Every 50th of a second (one "tick"), a routine is called that handles special
  586.   effects and increments  the note  counter if necessary.   When  a new  note
  587.   begins, the GUS is informed of the new data and handles the rest of the work.
  588.  
  589.  
  590.   Effects
  591.   -------
  592.  
  593.   MIX supports the following special effects:
  594.        Porta Up                 Pattern Break
  595.        Porta Down               Set Speed
  596.        Sample Offset            Retrig Note
  597.        Volume Slide             FineVolume Up
  598.        Volume Set               FineVolume Down
  599.        Position Jump            TonePortamento
  600.  
  601.   This should be  enough to make  most MODs  sound OK, unless  you're a  real
  602.   perfectionist (like DNA).   I'm already working on  adding the other,  more
  603.   subtle, effects.
  604.  
  605.  
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.                                     Page 11
  614.  
  615.  
  616.  
  617.  
  618.                                    Known Bugs
  619.                                    ----------
  620.  
  621.   What, me?  Know about bugs, and not fix them?  Don't be silly!  Well, okay,
  622.   you've convinced me... there ARE a few...
  623.  
  624.      - MIX will only load 64k of each sample, and so songs like U4IA.MOD will
  625.        not play properly, if at all.  If the list of songs that doesn't  work
  626.        grows extremely  huge, we  WILL try  to fix  this.   Until then,  it's
  627.        probably not worth it.
  628.  
  629.      - "Clicking" in non-GUS mode has been FIXED! We hope.  We all have a GUS
  630.        now, so it's really  hard to tell.   LET US KNOW  if it still  clicks,
  631.        PLEASE!
  632.  
  633.      - Sometimes-clicking in GUS mode.  We're working on it...
  634.  
  635.      - The GUS inititialization bugs were fixed when I moved to the Gravis SDK.
  636.        However, now looping samples do weird  things sometimes.  It's not  my
  637.        fault!  I swear!
  638.  
  639.      - Many arthropods.
  640.  
  641.  
  642.                                 Greetings go to:
  643.                                 ----------------
  644.  
  645.   Everyone!                -    Hi!  How are you today?  WRITE TO US!
  646.  
  647.   And, more specifically:
  648.  
  649.   Mom & Dad                -    Hi!
  650.   Dave's Mom & Dad         -    Hi!
  651.   Jurgen Huneborn          -    The first person  outside of  Thunder Bay  to
  652.                                 EVER write to us!   And presently, still  the
  653.                                 last!  Hi, guy!
  654.   Future Crew              -    I've never  met you,  or  talked to  you,  or
  655.                                 conversed with  you, or  written to  you,  or
  656.                                 heard from you, but I like you anyway!
  657.   Cascada                  -    Likewise!
  658.   Renaissance              -    Same idea!
  659.   GUS Users                -    Isn't life wonderful?
  660.   Advanced Gravis & Forte  -    Great sound  card!!   Keep  up  the  terrific
  661.                                 work...  (and hey, how bout an SBPro emulator
  662.                                 for all those programs that refuse to support
  663.                                 your card?  SBOS  is good (sorta) but,  well,
  664.                                 it's mono...)
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.                                     Page 12
  672.  
  673.  
  674.  
  675.  
  676.                                Special Thanks To:
  677.                                ------------------
  678.  
  679.   ANDREW SEARS, Whitby, Ontario      -    Original definition of the MOD file
  680.                                           format for us (see MOD_INFO.TXT for
  681.                                           more   information)    via    North
  682.                                           Amerinet.
  683.  
  684.   DAN LYNES, Thunder Bay, Ontario    -    Provided information on the 669 file
  685.                                           format,  which   I  have   yet   to
  686.                                           implement.  Keep waiting...
  687.  
  688.   KEVIN SIDLAR, Thunder Bay, Ontario -    Reported non-GUS "clicking" bug and
  689.                                           recently sent us information  about
  690.                                           the STM file format, which I finally
  691.                                           got around to implementing!
  692.  
  693.   Otto Chrons, Finland Somewhere     -    Sent  us  information  on  the  S3M
  694.                                           format,  which   we  also   haven't
  695.                                           implemented yet.  Thanks!  (he also
  696.                                           wrote a mod player: DMP - try  that
  697.                                           too)
  698.  
  699.   Jurgen Huneborn, Germany Somewhere -    The first person outside of Thunder
  700.                                           Bay to  EVER  write  to  us!    And
  701.                                           presently, still the last! Hi, guy!
  702.  
  703.   Advanced Gravis & Forte, Canada    -    You know why...   :)
  704.  
  705.  
  706.                                     The End
  707.                                     -------
  708.  
  709.   USELESS TRIVIA: Our logo is the pulsating chicken. As you continue with MIX,
  710.        always remember: There Had to Be A Chicken Somewhere... 
  711.  
  712.   And remember our  motto to lead  you through  life: "If it  doesn't have  a
  713.   chicken on it, it's USELESS!"
  714.  
  715.   USELESS TRIVIA:  This is the end of the documentation.  Bye.
  716.  
  717.                       Siella piti olla kana jossain!!  :)
  718.                  (Fin(n)ish ending... get it?  Ha ha ha ha ha)
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.                                     Page 13